#include "c_precompiled.h"
#include "c_local.h"

#ifdef __cplusplus
extern "C" {
#endif

using namespace boost;

#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
#else
int main(int argc, char **argv)
#endif
{
	EngineSystem *eng=0;
    try { 
		shared_ptr<EngineSystem> eng=shared_ptr<EngineSystem>(new EngineSystem());
		eng->run();
	} catch( Ogre::Exception& e ) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
        MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
        std::cerr << "An exception has occured: " << e.getFullDescription();
#endif
    }
    return 0;
}

#ifdef __cplusplus
}
#endif